Telegram Group »
United States »
Библиотека мобильного разработчика | Android iOS Swift Retrofit Moshi Chuck » Telegram Webview
🚨 Что на самом деле происходит с увольнениями в ИТ
Каждый день в чатах разработчиков появляются сообщения «ищу работу», «команду сократили», «проект закрыли». Но никто не говорит о причинах и масштабах катастрофы. Мы запустили большое исследование, чтобы раскрыть правду!
🎯 Что мы выясним:
→ Реальные причины увольнений
→ Сколько времени нужно на поиск работы
→ Самые безумные истории смены работы
Понимая реальную ситуацию, мы сможем принимать взвешенные решения о карьере и не попасться на удочку HR-сказок.
👉 Пройдите опрос за 3 минуты и помогите всему сообществу: https://clc.to/yJ5krg
Каждый день в чатах разработчиков появляются сообщения «ищу работу», «команду сократили», «проект закрыли». Но никто не говорит о причинах и масштабах катастрофы. Мы запустили большое исследование, чтобы раскрыть правду!
🎯 Что мы выясним:
→ Реальные причины увольнений
→ Сколько времени нужно на поиск работы
→ Самые безумные истории смены работы
Понимая реальную ситуацию, мы сможем принимать взвешенные решения о карьере и не попасться на удочку HR-сказок.
👉 Пройдите опрос за 3 минуты и помогите всему сообществу: https://clc.to/yJ5krg
#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Junior Android-developer — от 110 000 ₽, гибрид (Москва)
Head of iOS Development (WebView-приложения) — гибрид (Санкт-Петербург, Сочи, Ереван, Амстердам, Дубай)
Flutter-разработчик — удалёнка
Java/Kotlin-разработчик (Календарь) — от 300 000 до 500 000 ₽, удалёнка
Middle+/Senior IOS developer — удалёнка
#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔧 How to: настраиваем GitLab CI/CD для мобильных тестов
Ручные сборки и деплой занимают время, а человеческий фактор может привести к ошибкам. Автоматизируем процесс!
1️⃣ Создаём .gitlab-ci.yml
Файл .gitlab-ci.yml – сердце CI/CD в GitLab. Здесь описываем, какие тесты и когда запускать.
Пример пайплайна для Android (Appium + Pytest):
➖ Что тут происходит?
✔️ stages: Определяем этапы (у нас пока только test).
✔️ variables: Переменные среды (Android SDK и путь к эмулятору).
✔️ test_ui: Джоб, который запускает UI-тесты.
✔️ image: Используем докер-образ с Python 3.9.
✔️ before_script: Устанавливаем зависимости перед запуском.
✔️ script: Запускаем тесты.
✔️ artifacts: Сохраняем отчёт о тестах.
2️⃣ Подключаем GitLab Runner
Чтобы GitLab выполнял тесты, нужен Runner – агент, который их запускает.
Запускаем Runner на своём сервере
➡️ Устанавливаем GitLab Runner:
➡️ Регистрируем Runner:
Вводим URL репозитория и токен (берём в Settings → CI/CD → Runners).
➡️ Запускаем Runner:
Теперь тесты будут выполняться прямо на твоей машине или сервере.
3️⃣ Добавляем Android-эмулятор в пайплайн
Если нужно гонять тесты на Android:
✔️ budtmo/docker-android – докер-контейнер с эмулятором Android.
✔️ start-emulator – запускаем эмулятор.
✔️ adb wait-for-device – ждём, пока устройство загрузится.
4️⃣ Автоматизация сборки APK/IPA
Чтобы собирать APK (Android) или IPA (iOS) в GitLab CI/CD:
Android (Gradle)
iOS (Fastlane)
Какой CI/CD используете вы? Делитесь опытом в комментариях💬
🐸 Библиотека мобильного разработчика
#буст
Ручные сборки и деплой занимают время, а человеческий фактор может привести к ошибкам. Автоматизируем процесс!
Файл .gitlab-ci.yml – сердце CI/CD в GitLab. Здесь описываем, какие тесты и когда запускать.
Пример пайплайна для Android (Appium + Pytest):
stages:
- test
variables:
ANDROID_HOME: "/sdk"
PATH: "$ANDROID_HOME/emulator:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH"
test_ui:
stage: test
image: python:3.9
before_script:
- pip install -r requirements.txt
script:
- pytest tests/ui_tests --junitxml=report.xml
artifacts:
paths:
- report.xml
✔️ stages: Определяем этапы (у нас пока только test).
✔️ variables: Переменные среды (Android SDK и путь к эмулятору).
✔️ test_ui: Джоб, который запускает UI-тесты.
✔️ image: Используем докер-образ с Python 3.9.
✔️ before_script: Устанавливаем зависимости перед запуском.
✔️ script: Запускаем тесты.
✔️ artifacts: Сохраняем отчёт о тестах.
Чтобы GitLab выполнял тесты, нужен Runner – агент, который их запускает.
Запускаем Runner на своём сервере
sudo curl -L --output /usr/local/bin/gitlab-runner \
"https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64"
sudo chmod +x /usr/local/bin/gitlab-runner
gitlab-runner register
Вводим URL репозитория и токен (берём в Settings → CI/CD → Runners).
gitlab-runner start
Теперь тесты будут выполняться прямо на твоей машине или сервере.
Если нужно гонять тесты на Android:
test_android:
stage: test
image: budtmo/docker-android:emulator_11.0
before_script:
- start-emulator
- adb wait-for-device
script:
- pytest tests/android_tests
✔️ budtmo/docker-android – докер-контейнер с эмулятором Android.
✔️ start-emulator – запускаем эмулятор.
✔️ adb wait-for-device – ждём, пока устройство загрузится.
Чтобы собирать APK (Android) или IPA (iOS) в GitLab CI/CD:
Android (Gradle)
build_apk:
stage: build
image: openjdk:11
script:
- ./gradlew assembleDebug
artifacts:
paths:
- app/build/outputs/apk/debug/app-debug.apk
iOS (Fastlane)
build_ios:
stage: build
image: circleci/macos-xcode
script:
- bundle exec fastlane build
artifacts:
paths:
- build/ios.ipa
Какой CI/CD используете вы? Делитесь опытом в комментариях
#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
Незащищенный API становится легкой мишенью для хакеров, поэтому его безопасность – приоритет для разработчиков и компаний, дорожащих своей репутацией.
В этой статье мы рассмотрим шесть основных аспектов защиты API, которые помогут минимизировать риски взлома, утечки данных и отказа в обслуживании.
#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
Когда мобильное приложение ведет себя странно, а в студии нет очевидных ошибок, на помощь приходит
adb logcat
– ваш "рентген" для Android-устройств.Как использовать?
adb logcat | grep "MyAppTag" # фильтр по вашему тегу
adb logcat -s *:E # только ошибки (Error)
adb logcat > logs.txt # сохранить логи в файл
Crash
и Exception
даже без дебаггера.Log.d("MyAppTag", "message")
).Choreographer
, ANR
).Очистите старые логи перед тестированием, чтобы не "тонуть" в данных:
adb logcat -c
А вы часто используете logcat? Делитесь любимыми командами в комментариях
#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🫣 Устали от HR-сказок про «дружный коллектив» и «печеньки в офисе»?
Давайте честно поговорим о том, что действительно происходит на IT-рынке. Не в розовых презентациях, а в реальной жизни разработчиков, тестировщиков, аналитиков и всех, кто живет кодом.
🧐 Мы проводим исследование, чтобы выяснить:
— Как часто мы прыгаем между компаниями (и почему)
— Какие красные флаги заставляют бежать без оглядки
— Где реально находят работу
— Что бесит в HR больше всего
— Сколько кругов собеседований — это уже перебор
Результаты покажут реальную картину рынка. Без приукрашиваний. Может, компании поймут, что нужно менять, а специалисты — куда двигаться дальше.
😈 Опрос займет 5 минут, но результаты будут работать на всех нас → https://clc.to/9aaXVg
Давайте честно поговорим о том, что действительно происходит на IT-рынке. Не в розовых презентациях, а в реальной жизни разработчиков, тестировщиков, аналитиков и всех, кто живет кодом.
🧐 Мы проводим исследование, чтобы выяснить:
— Как часто мы прыгаем между компаниями (и почему)
— Какие красные флаги заставляют бежать без оглядки
— Где реально находят работу
— Что бесит в HR больше всего
— Сколько кругов собеседований — это уже перебор
Результаты покажут реальную картину рынка. Без приукрашиваний. Может, компании поймут, что нужно менять, а специалисты — куда двигаться дальше.
😈 Опрос займет 5 минут, но результаты будут работать на всех нас → https://clc.to/9aaXVg
Перед тем как выкатывать обнову, пробегитесь по этому списку — спасёт от багов, негативных отзывов и бессонных ночей.
Какие пункты вы бы добавили? Делитесь в комментах
#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🧩 Стандартизация без боли
В начале проекта разработчик хочет свободы творчества: писать код быстро и видеть результат. Но со временем баги, регрессии и несовместимые решения превращают эту свободу в боль.
В статье автор сравнивает языки программирования по уровню синтаксической однозначности, гибкости и пригодности для командной работы.
Также рассматривает, как строгие ограничения формируют культуру качества, а чрезмерная выразительность часто мешает команде работать как единое целое
👉 Читать статью
🐸 Библиотека мобильного разработчика
#свежак
В начале проекта разработчик хочет свободы творчества: писать код быстро и видеть результат. Но со временем баги, регрессии и несовместимые решения превращают эту свободу в боль.
В статье автор сравнивает языки программирования по уровню синтаксической однозначности, гибкости и пригодности для командной работы.
Также рассматривает, как строгие ограничения формируют культуру качества, а чрезмерная выразительность часто мешает команде работать как единое целое
👉 Читать статью
#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
Собрали лучшее о мобильной разработке. Включаем и смотрим по пути на работу.
#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
Тестирование UI в Android — это баланс между тщательностью и удобством поддержки. Espresso проверяет логику: тексты, клики, переходы. Но для изображений и анимаций часто используют скриншотные тесты или оставляют их ручными.
В этой статье автор покажет, как пойти другим путём — научить Kaspresso понимать, что именно нарисовано на экране. Расскажет, как сравнивать изображения и кадры анимации внутри обычных инструментов UI-тестирования — без тяжёлой артиллерии и лишней хрупкости.
👉 Читать статью
#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
🥴 Средний разработчик меняет работу каждые 1,5 года
И это не потому, что мы такие непостоянные. Просто рынок показывает свое истинное лицо быстрее, чем успевают напечатать визитки.
Поэтому мы собираем инсайды от тех, кто находится в окопах digital-трансформации каждый день. От джуниоров, которые только въезжают в профессию, до сеньоров, повидавших всякого.
😳 О чем говорим откровенно:
— Job-hopping и что за этим стоит
— Red flags, которые мгновенно убивают мотивацию
— Реальные источники вакансий (не те, что рекламируют)
— Боль от общения с рекрутерами
— Сколько этапов отбора — норма, а сколько — издевательство
Когда мы объединим опыт сотен IT-специалистов, получится настоящая карта того, как устроена индустрия. Не по версии HR-отделов, а по версии тех, кто пишет код, тестирует продукты и двигает технологии вперед.
🚀 Участвовать в исследовании → https://clc.to/9aaXVg
И это не потому, что мы такие непостоянные. Просто рынок показывает свое истинное лицо быстрее, чем успевают напечатать визитки.
Поэтому мы собираем инсайды от тех, кто находится в окопах digital-трансформации каждый день. От джуниоров, которые только въезжают в профессию, до сеньоров, повидавших всякого.
😳 О чем говорим откровенно:
— Job-hopping и что за этим стоит
— Red flags, которые мгновенно убивают мотивацию
— Реальные источники вакансий (не те, что рекламируют)
— Боль от общения с рекрутерами
— Сколько этапов отбора — норма, а сколько — издевательство
Когда мы объединим опыт сотен IT-специалистов, получится настоящая карта того, как устроена индустрия. Не по версии HR-отделов, а по версии тех, кто пишет код, тестирует продукты и двигает технологии вперед.
🚀 Участвовать в исследовании → https://clc.to/9aaXVg
Please open Telegram to view this post
VIEW IN TELEGRAM
Точно так же, как у каждого дома есть прочный фундамент, у каждого программного проекта есть архитектура, на которой он построен, и у каждого проекта есть своя структура приложения.
Типы архитектурных шаблонов могут быть разными, но есть 4 наиболее часто используемых шаблона, которые весь IT-мир постоянно критикует, но в то же время продолжает использовать: MVC, MVP, MVVM и Viper.
А какие архитектуры чаще всего используете в своих проектах вы? Голосуйте и пишите своё мнение в комментариях
❤️ — MVC
👍 — MVP
👏 — MVVM
🔥 — Viper
🤝 — другое
#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM